#include<iostream>
#include<queue>
using namespace std;
int main(){
	queue<int>q;
	int i,j,temp,ans=0,min1=0,min2=0,sum=0;
	int n,data,length=0,index=0;
	cin>>n;
	for(i=0;i<n;i++){
		cin>>data;
		q.push(data);
	}
	
	while(q.size()-1){
		min1=q.front();
		q.pop();
		min2=q.front();
		q.pop();
		//length=q.size();
		if(min1>min2){
			temp=min1;
			min1=min2;
			min2=temp;
		}
	for(i=0;i<q.size();i++){
		//index=0;
			if(q.front()<min1){
				temp=min1;
				min1=q.front();
				q.pop();
				q.push(min2);
				min2=temp;
				//index=1;
			}
			else if(q.front()<min2){
				temp=min2;
				min2=q.front();
				q.pop();
				q.push(temp);
			
				/*if(index==1){
					i++;
				}*/
			}
			else{
				q.push(q.front());
				q.pop();
			}
		}
	sum=min1+min2;
	ans+=sum;
	q.push(sum);
}
cout<<ans;
return 0;
}
